:root{
	--o-r-common-company_name:合同会社DAI;
	--o-r-common-name:訪問はり灸からーず;
	--o-r-common-logo:rogo1.png;
	--o-r-common-hours:9\00003a00-18\00003a00
定休日：日曜日;
	--o-r-common-copyright:2026;
	--o-r-common-googlemap:<iframe src="https\00003a//www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2911.5583799945466!2d141.2119554!3d43.1348026!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x5f0b2716945930f7%3A0x3dba41486d66667a!2z44CSMDA2LTA4NTEg5YyX5rW36YGT5pyt5bmM5biC5omL56iy5Yy65pif572u77yR5p2h77yT5LiB55uu77yV4oiS77ySIOOCpOODiOODvOODlOOCouaYn-e9ruS4reWkruW8kOeVqumkqCAx!5e0!3m2!1sja!2sjp!4v1785377344081!5m2!1sja!2sjp" width="600" height="450" style="border\00003a0\00003b" allowfullscreen="" loading="lazy" referrerpolicy="strict-origin-when-cross-origin"></iframe>;
	--o-r-common-line_url:https\00003a//lin.ee/s3sHT3z;
	--o-r-visual_theme-width:1170px;
	--o-r-colors-base:#FFF9F4;
	--o-r-colors-base_text:#2C2C2C;
	--o-r-colors-button:#234946;
	--o-r-colors-button_text:#FFFFFF;
	--o-r-colors-assort:#f17a24;
	--o-r-colors-assort_text:#FFFFFF;
	--o-r-colors-accent:#C94718;
	--o-r-colors-accent_text:#FFFFFF;
	--o-r-font_title-css_url:https\00003a//fonts.googleapis.com/css2?family=Zen+Maru+Gothic\00003awght@400\00003b900&display=swap;
	--o-r-font_title-family:"Zen Maru Gothic", sans-serif\00003b;
	--o-r-font_title-style:normal;
	--o-r-font_title-weight:900;
	--o-r-font_body-css_url:https\00003a//fonts.googleapis.com/css2?family=Noto+Sans+JP\00003awght@400\00003b700&display=swap;
	--o-r-font_body-family:'Noto Sans JP', sans-serif;
	--o-r-font_body-style:normal;
	--o-r-font_body-weight:400;
	--o-r-font_en-css_url:https\00003a//fonts.googleapis.com/css2?family=Zen+Maru+Gothic\00003awght@400\00003b900&display=swap;
	--o-r-font_en-family:"Zen Maru Gothic", sans-serif\00003b;
	--o-r-font_en-style:normal;
	--o-r-aos_setting-offset:300;
	--o-r-aos_setting-duration:1000;
	--o-r-aos_setting-easing:linear;
	--o-r-aos_setting-delay:500;
	--o-r-aos_setting-placement:top-bottom;
	--o-r-aos_setting-once:true;
	--o-r-animation_setting-animation_type:none;
	--o-r-animation_setting-duration:500;
	--o-r-animation_setting-easing:linear;
	--o-r-animation_setting-delay:3;
	--o-r-animation_setting-timing:50;
	--o-r-animation_setting-once:-w-scroll-re-active;
}
.-x-richtext ul, .-x-richtext ol {
	list-style-position: inside;
}
.-j-inline-block {
 display: inline-block;
}
[data-legal]{
	position:relative;
	--legal-offset-h:attr(data-legal-offset-h px);
	--legal-offset-v:attr(data-legal-offset-v px);
}
[data-legal][data-legal-safe="1"]::after{
	position: absolute;
	opacity: 0.5;
	color: black;
	content: "墨";
	font-size: 16px;
	display: block;
	height: 24px;
	padding-top: 0px;
	background-image: url(/_lib/lc.png);
	background-size: auto 20px;
	background-repeat: no-repeat;
	padding-left: 50px;
	background-position: left top;
}
[data-legal][data-legal-safe="1"]:hover::after {
    position: absolute;
    opacity: 0.5;
    color: black;
    content: attr(data-legal-check-at);
    white-space:nowrap;
    font-size: 11px;
    display: block;
    height: 24px;
    background-image: url(/_lib/lc.png);
    background-size: auto 20px;
    background-repeat: no-repeat;
    padding-top: 15px;
    padding-left: 0px;
    background-position: left top;
}

[data-legal-position="left-top"]::after{
	left:var(--legal-offset-h);
	top:var(--legal-offset-v);
}
[data-legal-position="left-bottom"]::after{
	left:var(--legal-offset-h);
	bottom:var(--legal-offset-v);
}
[data-legal-position="right-top"]::after{
	right:var(--legal-offset-h);
	top:var(--legal-offset-v);
}
[data-legal-position="right-bottom"]::after{
	right:var(--legal-offset-h);
	bottom:var(--legal-offset-v);
}
/*common_css*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html{
  font-size:62.5%;
  background-color: var(--o-r-colors-base);
  color: var(--o-r-colors-base_text);
  -webkit-text-size-adjust: 100%;
  scroll-padding-top: 12rem;
  scroll-behavior: smooth;
}

main > section:nth-child(even),
main > div:nth-child(even){
background-color: #f5d5bb;
}

body {
  font-size:1.8rem;
  line-height : 1.8;
  overflow-wrap: anywhere;
  font-family:'Noto Sans JP', sans-serif;
	
    font-weight:400;
  
	
	
    font-style:normal;
  
	
}

a{
  color: inherit;
}
a[href^="tel:"] {
  pointer-events: none;
  text-decoration: none;
}
.-w-text p > a{
  color:inherit;
  text-decoration: underline;
}
.-w-text p > a[href^="tel:"] {
  pointer-events: none;
  text-decoration: none;
}
.-w-text p > a:hover{
  text-decoration: none;
}
.-x-richtext {
  p + p {
    margin-top: 0.75em;
  }
}

h2,h3,h4,h5,h6,.-w-font-ttl {
  line-height : 1.4;
  font-family:&quot;Zen Maru Gothic&quot;, sans-serif;;
	
    font-weight:900;
  
	
	
    font-style:normal;
  
	
}


.-w-font-en {
  line-height : 1.4;
  font-family:&quot;Zen Maru Gothic&quot;, sans-serif;;
	
	
    font-weight:400;
  
	
    font-style:normal;
  
	
}

img {
  max-width: 100%;
  height:auto;
  vertical-align: top;
}
br.-w-pc {
  display: block;
}
br.-w-sp {
  display: none;
}
h3,
.-w-font-ttl {
	line-height: 1.4;
	font-size: 1.3em; 
	font-weight: bold;
	color: var(--o-r-colors-assort);
}
.-w-font-ttl.-w-sub-title {
	font-size: 1.125em; 
	line-height: 1.5;
	color: var(--o-r-colors-assort); 
}
.-w-font-ttl-s {
	font-size: 1.3em; 
	line-height: 1.4;
	font-weight: bold;
	color: var(--o-r-colors-assort); 
}
.-w-font-ttl-s.-w-sub-title {
	font-size: 1.125em;
	font-weight: bold;
	color: var(--o-r-colors-assort); 
}
[data-w-width] {
  max-width: 100%;
}
[data-w-width="1"] {
  width: 1170px;
  width:1170px;
  margin: 0 auto;
}
[data-w-width="1"] [data-w-width="1"]{
  max-width:100%;
  width:100%;
}
@media (max-width: 1170px){
  [data-w-width="1"] {
    max-width:94%;
    width:100%;
    margin:0 auto;
  }
}
.-x-text{
  max-width: 1170px;
  margin:0 auto;
}
.-x-text table{
  border-collapse: collapse;
}
.-x-text td{
  padding: 2px 5px;
  border: 1px solid #ccc;
}
.-x-text ul
,.-x-text ol
,.-x-text li{
  list-style-type:initial;
}
.-x-cont > [data-lib]:not(:first-child) {
  margin-top:4rem;
}
.-x-cont > [data-lib] ~ [data-lib]{
  margin-top:4rem;
}

@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 8rem;
  }
  body {
    font-size: 1.6rem;
  }
  [data-w-width="0"]{
    max-width:94%;
    margin: 0 auto;
  }
  br.-w-pc {
    display: none;
  }
  br.-w-sp {
    display: block;
  }
  .-x-cont > [data-lib] {
    margin-top:2.5rem;
  }
  .-x-cont > [data-lib] ~ [data-lib]{
    margin-top:2.5rem;
  }
  .-w-text p > a[href^="tel:"] {
    pointer-events: auto;
    text-decoration: underline;
  }
  a[href^="tel:"] {
    pointer-events: auto;
    text-decoration: underline;
  }
  .-w-font-ttl-s {
  	font-size: 1.1em;  
  }
  .-w-font-ttl-s.-w-sub-title {
  	font-size: 1em; 
  }
}

.pagenation {
	display:flex;
	justify-content: center;
	text-align: center;
	margin: 50px 0 0 -10px;
}
.pagenation span {
	display:flex;
	justify-content: center;
	align-items: center;
	width: 50px;
	padding: 0;
	line-height: 1;
	font-size: 0.9375em;
	color: var(--o-r-colors-button);
	box-sizing: border-box;
	margin-left: 10px;
}
.pagenation span a {
	display:flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 9px auto;
	text-decoration: none;
	border: 1px solid;
	height: 50px;
	background: var(--o-r-colors-button_text);
	border-color: var(--o-r-colors-button);
	color: var(--o-r-colors-button);
}
.pagenation span a:hover {
	text-decoration: none;
	background: var(--o-r-colors-button);
	color: var(--o-r-colors-button_text);
}
.pagenation span.current {
	padding: 9px 0;
	text-decoration: none;
	border: 1px solid;
	height: 50px;
	background: var(--o-r-colors-button);
	border-color: var(--o-r-colors-button);
	color: var(--o-r-colors-button_text);
}
.pagenation span.scope_limit {
	text-decoration: none;
	border: 0;
	background: var(--o-r-colors-button_text);
	border-color: var(--o-r-colors-button);
	color: var(--o-r-colors-button);
}
.pagenation span.prev,.pagenation span.next {
	padding:0;
}
.pagenation span.prev a,.pagenation span.next a {
	padding: 9px 0;
}
.pagenation span.prev a:hover,.pagenation span.next a:hover {}
.pagenation span.prev.current,.pagenation span.next.current {
	display: none;
}

/* 見出しアニメーション設定 */





:root {
/* 汎用カラー - 基本無彩色 */
--color-white: #ffffff;
--color-black: #000000;

/* 汎用カラー - グレースケール */
--gray-50: color-mix(in srgb, var(--o-r-colors-base) 98%, var(--o-r-colors-base_text) 2%);
--gray-100: color-mix(in srgb, var(--o-r-colors-base) 95%, var(--o-r-colors-base_text) 5%);
--gray-200: color-mix(in srgb, var(--o-r-colors-base) 90%, var(--o-r-colors-base_text) 10%);
--gray-300: color-mix(in srgb, var(--o-r-colors-base) 80%, var(--o-r-colors-base_text) 20%);
--gray-400: color-mix(in srgb, var(--o-r-colors-base) 60%, var(--o-r-colors-base_text) 40%);
--gray-500: color-mix(in srgb, var(--o-r-colors-base) 50%, var(--o-r-colors-base_text) 50%);
--gray-600: color-mix(in srgb, var(--o-r-colors-base) 40%, var(--o-r-colors-base_text) 60%);
--gray-700: color-mix(in srgb, var(--o-r-colors-base) 20%, var(--o-r-colors-base_text) 80%);
--gray-800: color-mix(in srgb, var(--o-r-colors-base) 10%, var(--o-r-colors-base_text) 90%);
--gray-900: color-mix(in srgb, var(--o-r-colors-base) 5%, var(--o-r-colors-base_text) 95%);

/* 汎用カラー - 背景バリエーション */
--bg-primary: var(--o-r-colors-base);
--bg-secondary: color-mix(in srgb, var(--o-r-colors-base) 95%, var(--o-r-colors-base_text) 5%);
--bg-tertiary: color-mix(in srgb, var(--o-r-colors-base) 90%, var(--o-r-colors-base_text) 10%);
--bg-overlay: color-mix(in srgb, var(--color-black) 50%, transparent 50%);

/* 汎用カラー - ボーダー/境界線 (Light/Dark両対応) */
--border-light: color-mix(in srgb, var(--o-r-colors-base) 85%, var(--o-r-colors-base_text) 15%);
--border-default: color-mix(in srgb, var(--o-r-colors-base) 75%, var(--o-r-colors-base_text) 25%);
--border-strong: color-mix(in srgb, var(--o-r-colors-base) 55%, var(--o-r-colors-base_text) 45%);
--divider: color-mix(in srgb, var(--o-r-colors-base) 80%, var(--o-r-colors-base_text) 20%);

/* 汎用カラー - テキスト階層 */
--text-primary: var(--o-r-colors-base_text);
--text-secondary: color-mix(in srgb, var(--o-r-colors-base_text) 75%, transparent 25%);
--text-tertiary: color-mix(in srgb, var(--o-r-colors-base_text) 60%, transparent 40%);
--text-disabled: color-mix(in srgb, var(--o-r-colors-base_text) 40%, transparent 60%);
--text-link: var(--o-r-colors-assort);

/* 汎用カラー - インタラクション状態 (Light/Dark両対応) */
--hover-bg: color-mix(in srgb, var(--o-r-colors-button) 85%, var(--o-r-colors-button_text) 15%);
--active-bg: color-mix(in srgb, var(--o-r-colors-button) 70%, var(--o-r-colors-button_text) 30%);
--focus-ring: color-mix(in srgb, var(--o-r-colors-assort) 40%, transparent 60%);
--disabled-bg: color-mix(in srgb, var(--o-r-colors-base) 95%, var(--o-r-colors-base_text) 5%);

/* 汎用カラー - セマンティックカラー (8色から4色に分離生成) */
/* Success: assort + white で明るい青緑系 */
--success-base: color-mix(in srgb, var(--o-r-colors-assort) 60%, var(--color-white) 40%);
--success-bg: color-mix(in srgb, var(--success-base) 15%, var(--o-r-colors-base) 85%);
--success-border: color-mix(in srgb, var(--success-base) 40%, transparent 60%);
--success-text: color-mix(in srgb, var(--success-base) 100%, var(--color-black) 0%);

/* Error: accent + black で濃い赤系 */
--error-base: color-mix(in srgb, var(--o-r-colors-accent) 80%, var(--color-black) 20%);
--error-bg: color-mix(in srgb, var(--error-base) 15%, var(--o-r-colors-base) 85%);
--error-border: color-mix(in srgb, var(--error-base) 40%, transparent 60%);
--error-text: var(--error-base);

/* Warning: accent + white で明るいオレンジ系 */
--warning-base: color-mix(in srgb, var(--o-r-colors-accent) 40%, var(--color-white) 60%);
--warning-bg: color-mix(in srgb, var(--warning-base) 25%, var(--o-r-colors-base) 75%);
--warning-border: color-mix(in srgb, var(--warning-base) 50%, transparent 50%);
--warning-text: color-mix(in srgb, var(--o-r-colors-accent) 70%, var(--color-black) 30%);

/* Info: assort そのまま青系 */
--info-base: var(--o-r-colors-assort);
--info-bg: color-mix(in srgb, var(--info-base) 12%, var(--o-r-colors-base) 88%);
--info-border: color-mix(in srgb, var(--info-base) 35%, transparent 65%);
--info-text: color-mix(in srgb, var(--info-base) 85%, var(--color-black) 15%);

/* 汎用カラー - シャドウ */
--shadow-sm: 0 1px 2px color-mix(in srgb, var(--color-black) 10%, transparent 90%);
--shadow-md: 0 4px 6px color-mix(in srgb, var(--color-black) 10%, transparent 90%);
--shadow-lg: 0 10px 15px color-mix(in srgb, var(--color-black) 15%, transparent 85%);
--shadow-focus: 0 0 0 3px var(--focus-ring);
}